package core;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import org.junit.Test;


import java.util.Collections;

public class Generator {


    /**
     * 生成mybatis plus格式的代码
     */
    @Test
    public void test() {

//        String dataUrl = "jdbc:mysql://localhost:3312/continue?useUnicode=true&characterEncoding=utf-8";
//        String userName = "root";
//        String password = "asd123ASD456";

//        String dataUrl = "jdbc:jtds:sqlserver://192.167.5.71:1433/NbAnimalDigit;instance=sql08";
//        String userName = "sa";
//        String password = "jiuzhang204";
//        192.167.5.226

        String dataUrl = "jdbc:mysql://192.167.5.226:3306/farm_test?useUnicode=true&characterEncoding=utf-8";
        String userName = "farm";
        String password = "farm000";


        FastAutoGenerator.create(dataUrl, userName, password)
                .globalConfig(builder -> {
                    builder.author("wqx") // 设置作者
                            .enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 覆盖已生成文件
                            .outputDir("D://code/test/core"); // 指定输出目录
                })
                .packageConfig(builder -> {
                    builder.parent("cn.com.ztesa.farm") // 设置父包名
                            .moduleName("herd") // 设置父包模块名
                            .pathInfo(Collections.singletonMap(OutputFile.xml, "D://code/test/core/mapper")); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
                    builder.addInclude("herd_farm_record") // 设置需要生成的表名
                            .addTablePrefix("sys_", "c_"); // 设置过滤表前缀
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板，默认的是Velocity引擎模板
                .execute();

    }

    @Test
    public void test2() {


    }


}
